Map হল একটি জাভাস্ক্রিপ্ট ডেটা স্ট্রাকচার, যা key-value পেয়ার হিসেবে উপাদান সংরক্ষণ করে। এটি সাধারণত অবজেক্টের মত কাজ করে, কিন্তু কিছু গুরুত্বপূর্ণ পার্থক্য রয়েছে:
for...of
লুপের মাধ্যমে পুনরাবৃত্তি করা যায়।Map তৈরি করার জন্য new Map()
ব্যবহার করতে হয়। আপনি একটি খালি Map বা কোনো প্রাথমিক key-value pair সহ Map তৈরি করতে পারেন।
const map = new Map();
const map = new Map([
['name', 'Alice'],
['age', 25],
['city', 'New York']
]);
console.log(map);
set(key, value)
এই মেথডটি একটি নতুন key-value pair Map-এ যোগ করে। যদি আগের থেকেই কীগুলো থাকে, তবে তাদের মান পরিবর্তন হয়ে যায়।
const map = new Map();
map.set('name', 'Bob');
map.set('age', 30);
console.log(map.get('name')); // আউটপুট: Bob
console.log(map.get('age')); // আউটপুট: 30
get(key)
এই মেথডটি একটি নির্দিষ্ট কী-এর মান রিটার্ন করে।
console.log(map.get('name')); // আউটপুট: Bob
has(key)
এই মেথডটি পরীক্ষা করে যে, Map-এ একটি নির্দিষ্ট কী আছে কি না।
console.log(map.has('name')); // আউটপুট: true
console.log(map.has('city')); // আউটপুট: false
delete(key)
এই মেথডটি একটি নির্দিষ্ট কী এবং তার মান Map থেকে মুছে ফেলে।
map.delete('age');
console.log(map.has('age')); // আউটপুট: false
clear()
এই মেথডটি Map-এর সব উপাদান মুছে ফেলে।
map.clear();
console.log(map.size); // আউটপুট: 0
size
এই প্রপার্টি Map-এ মোট উপাদানের সংখ্যা জানায়।
console.log(map.size); // আউটপুট: 2
Map একটি ইটারেবল অবজেক্ট, তাই আপনি এটি for...of
লুপ দিয়ে পুনরাবৃত্তি করতে পারেন। আপনি Map
-এর কীগুলোর, মানগুলোর, বা কীগুলোর সাথে মানগুলোর উপর ইটারেশন করতে পারবেন।
for...of
লুপ ব্যবহার করে Map-এ ইটারেশনconst map = new Map([
['name', 'Alice'],
['age', 25],
['city', 'New York']
]);
for (let [key, value] of map) {
console.log(`${key}: ${value}`);
}
আউটপুট:
name: Alice
age: 25
city: New York
forEach()
মেথড ব্যবহারmap.forEach((value, key) => {
console.log(`${key}: ${value}`);
});
আউটপুট:
name: Alice
age: 25
city: New York
এখানে, forEach()
মেথড ব্যবহার করা হয়েছে যা key
এবং value
প্যারামিটার হিসেবে প্রত্যেকটি Map-এর উপাদান দিয়ে এক্সিকিউট হয়।
বৈশিষ্ট্য | Map | Object |
---|---|---|
কীগুলোর টাইপ | যেকোনো ডেটা টাইপ (স্ট্রিং, নম্বর, অবজেক্ট, ফাংশন) | কেবল স্ট্রিং বা সিম্বল |
কীগুলোর অর্ডার | ইনসারশন অর্ডার বজায় থাকে | অর্ডার নির্দিষ্ট নয় |
আকার | size প্রপার্টি | Object.keys() দিয়ে গণনা করতে হয় |
কীগুলোর গুণগত মান | ইউনিক কীগুলো | একাধিক কীগুলো হতে পারে |
মেথড এবং প্রপার্টি | set() , get() , has() , delete() , clear() , size | শুধুমাত্র সাধারণ অবজেক্ট অপারেশন |
এটি পরিষ্কার যে, Map ব্যবহার করা বেশি কার্যকরী যখন ডেটার সাথে কাজ করতে হয় এবং ইনসারশন অর্ডার এবং ডেটার গুণগত মানের প্রয়োজন হয়।
Map জাভাস্ক্রিপ্টের একটি শক্তিশালী ডেটা স্ট্রাকচার যা key-value pair হিসেবে উপাদান সংরক্ষণ করে। এতে কীগুলো যেকোনো ডেটা টাইপ হতে পারে, এবং এটি ইনসারশন অর্ডার বজায় রাখে। Map-এর সাথে কাজ করার জন্য শক্তিশালী মেথড যেমন set()
, get()
, has()
, delete()
, clear()
ইত্যাদি রয়েছে, যা ডেটা পরিচালনা এবং ইটারেশনকে সহজ করে তোলে। Object-এর তুলনায়, Map আরও বেশি সুবিধাজনক যখন আপনাকে কীগুলোর গুণগত মান এবং ইনসারশন অর্ডার বজায় রাখতে হয়।
common.read_more